/*
 *
传递参数是普通数组
1. 指针传递方式：实参为数组的指针，形参为同类型的指针变量
void fun(int *arr, int size);
2. 数组名形式的参数：实参为数组的指针，形参为数组名（本质是一个指针变量）
void fun(int arr[], int size);

sizeof(data)=8
4 9 43 79 98 

 */
#include<stdio.h>

void fun_sort(int * data, int size);
void fun_print(int data[], int size);

int main(){
	int a[] = {9,4,43,98,79};

	fun_sort(a, sizeof(a) / sizeof(int));
	fun_print(a,sizeof(a) / sizeof(int));
	return 0;
}

void fun_sort(int *data, int size){
	for(int i = 0; i < size-1 ; i++){
		for(int j = 0; j < size - 1 - i; j++){
			if(data[j] > data[j+1]){
				int tmp = data[j];
				data[j] = data[j+1];
				data[j+1] = tmp;
			}
		}
	}
}

void fun_print(int data[], int size){
	//测试此时的data是数组名还是指针
	//sizeof(data)=8  是指针的大小 证明此时是指针
	printf("sizeof(data)=%ld\n",sizeof(data));
	for(int i = 0; i < size ; i++){
		printf("%d ",data[i]);
	}
	putchar('\n');
}


